The present invention relates to programmable computer systems. More particularly, the present invention is directed to a method suited for dynamic design collaboration over a data network.
The evolution of many documents, such as architectural specifications, books, legal papers and other lengthy manuscripts may involve multiple iterations or contributions from multiple developers or both. During the evolution of the aforementioned documents, difficulties may arise with management and organization of the various changes made thereto. For example, it may be difficult to determine the developer who provides a contribution or which contribution may be attributed to any given developer. To that end, many document organizational techniques have been developed throughout history to manage and control the development of documents. A rudimentary management technique requires changes to be made directly to the document itself. The document, however, may quickly become unintelligible after many iterations by a single developer or through fewer iterations by multiple developers. In addition, many developers must be centrally located to make changes to the document, or the same copy of the document must be distributed to the many developers, both of which may prove inconvenient and time consuming.
The advent of copy machines facilitated development of a single iteration of a document by providing multiple copies of the same, which are then transmitted to multiple developers. Modem communication has substantially reduced the transmission time of a copy of a document under development to developers from a copy center and has practically abrogated the need for developers to meet at a centralized location. Management of multiple copies, each of which has differing changes to the same iteration of a document, is often cumbersome, time-consuming and inefficient. Computer technology has contributed to a reduction in many of the drawbacks involved with handling several copies of a document under development.
In U.S. Pat. No. 5,341,469, for example, a computer system is employed to generate finished project plans and specifications for constructing a building, which includes a master specification and standardized information embedded in other documents. The system uses keynote references that are inserted into other documents, such as drawings produced by a CAD system, to construct a partial project knowledge base. The knowledge base is then used to guide the editing of a master specification to yield initial project plans and specifications. The keynote references are found in a catalog of standardized notes and are arranged to be searched by their attributes, using an interactive index utility. The keynote references are included on the CAD drawings, or like computer readable documents, from which they may be extracted for later use in constructing or updating a project knowledge base. The system provides a human interactive editing program that is used to augment, through questions and answers, the project knowledge base with information not present in the referenced keynote. Finally, the master specification is edited using the information in the project knowledge base to yield the finished project specification in the form of a set of document files which are then edited to form a final plans and specifications for project construction.
Management of document development has been further aided by recent development of data networks, such as the "Internet". The Internet typically includes a plurality of users employing client terminals communicating with a remote server computer to transfer information therebetween. To facilitate the transfer, the client terminals have a "web" browser that provides graphical user interface (GUI)-based communication with a "web page" obtained from a server. One popular collection of servers uses a standardized Hypertext Transfer Protocol (HTTP) to provide information and is known as the "World Wide Web." The information is typically presented as web pages written as text with standardized formatting and control symbols known as Hypertext Mark-up Language (HTML). HTML provides basic document formatting and allows a server to specify "links" to other servers and files. Use of an HTML-compliant browser involves specification of a link via a Uniform Resource Locator (URL). Upon such specification, the user's client terminal makes a TCP/IP request to the server identified in the link and receives an HTML file that is interpreted by the browser so that a electronic HTML document made up of one or more web pages may be displayed on the client's terminal.
What is needed, however, is an integrated document development method and system that facilitates dynamic design collaboration by multiple developers over a data network.